import math

b = float(input('基础宽度(m): '))
d = float(input('埋深(m): '))
f_k = float(input('上部结构传至基础的荷载(kN/m): '))
gamma1 = float(input('第一层土重度(kN/m^3): '))
d1 = float(input('第一层土厚(m): '))
e = float(input('第二层土孔隙比: '))
fak = float(input('地基承载力特征值(kPa): '))
h = float(input('地下水距地表距离(m): '))


gamma = float(input('垫层重度(kN/m^3): '))
theta = float(input('垫层应力扩散角(°): '))
z = float(input('预设垫层厚度(m): '))
g_k = b*d*gamma
p = (f_k+g_k)/b
sigma_c = gamma1*d
rad = math.radians(theta)
sigma_z = (p-sigma_c)*b/(b+2*z*math.tan(rad))
sigma_cz = gamma1*d + (gamma-10)*z
eta_b = float(input('请输入基础宽度地基承载力修正系数: '))
eta_d = float(input('请输入基础埋深地基承载力修正系数: '))
gamma_mz = sigma_cz/(d+z)
faz = fak + eta_b*gamma*(b-3) + eta_d*gamma_mz*(d+z-0.5)
if sigma_z+sigma_cz>faz:
    print('垫层厚度过小')
bb = b + 2*z*math.tan(rad)

print('垫层厚度为 %f m，宽度为 %f m，按1:1.5开挖' %(z, bb))